/*
 * Copyright (c) 2021-2031, 河北计全科技有限公司 (https://www.jeequan.com & jeequan@126.com).
 * <p>
 * Licensed under the GNU LESSER GENERAL PUBLIC LICENSE 3.0;
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 * <p>
 * http://www.gnu.org/licenses/lgpl.html
 * <p>
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
package com.rzcf.blink.pay.api.model;

import com.rzcf.blink.pay.types.common.CS;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serializable;

/**
 * 创建订单(统一订单) 响应参数
 *
 * @author dongsufeng
 */
@Data
@Schema(description = "创建订单(统一订单) 响应参数")
public class UnifiedOrderRespDTO implements Serializable {

    /**
     * 支付订单号
     **/
    @Schema(description = "支付订单号")
    private String payOrderId;

    /**
     * 商户订单号
     **/
    @Schema(description = "商户订单号")
    private String mchOrderNo;

    /**
     * 订单状态
     **/
    @Schema(description = "订单状态")
    private Integer orderState;

    /**
     * 支付参数类型  ( 无参数，  调起支付插件参数， 重定向到指定地址，  用户扫码   )
     **/
    @Schema(description = "支付参数类型")
    private String payDataType;

    /**
     * 支付参数
     **/
    @Schema(description = "支付参数")
    private String payData;

    /**
     * 渠道返回错误代码
     **/
    @Schema(description = "渠道返回错误代码")
    private String errCode;

    /**
     * 渠道返回错误信息
     **/
    @Schema(description = "渠道返回错误信息")
    private String errMsg;

    /**
     * 上游渠道返回数据包 (无需JSON序列化)
     **/
    //@JSONField(serialize = false)
    //private ChannelRetMsg channelRetMsg;


    /**
     * 生成支付参数
     **/
    public String buildPayData() {
        return "";
    }


}
